﻿using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
using Newtonsoft.Json;
using OfficeOpenXml.Table;
using System;
using System.Collections.Generic;
using System.Text;

namespace NP.BPMReportPlatform.AUTO
{
    public class GetSampleListOutput
    {
        /// <summary>
        /// 流程ID
        /// </summary>
        [ExporterHeader(DisplayName = "单据编号")]
        public string InstanceNumber { get; set; }

        /// <summary>
        /// 单据状态
        /// </summary>        
        [ExporterHeader(DisplayName = "单据状态")]
        public string OrderStatus { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [ExporterHeader(DisplayName = "申请时间")]
        public DateTime AddTime { get; set; }

        /// <summary>
        /// 发起人名称
        /// </summary>
        [ExporterHeader(DisplayName = "申请人")]
        public string AddUserName { get; set; }

        /// <summary>
        /// 单据详情链接
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string Url { get; set; }

        /// <summary>
        /// 生成免费订单状态
        /// </summary>
        [ExporterHeader(DisplayName = "生成免费订单状态")]
        public string SapStatus { get; set; }


        /// <summary>
        /// 事业部类型
        /// </summary>
        [ExporterHeader(DisplayName = "事业部类型")]
        public string BusinessType { get; set; }

        /// <summary>
        /// 销售员名称
        /// </summary>
        [ExporterHeader(DisplayName = "销售员名称")]
        public string SalespersonName { get; set; }

        /// <summary>
        /// 需求类型
        /// </summary>
        [ExporterHeader(DisplayName = "需求类型")]
        public string NneedType { get; set; }

        /// <summary>
        /// 客户编码
        /// </summary>
        [ExporterHeader(DisplayName = "客户编码")]
        public string CustomerCode { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        [ExporterHeader(DisplayName = "客户名称")]
        public string CustomerName { get; set; }

        /// <summary>
        /// 销售组织
        /// </summary>
        [ExporterHeader(DisplayName = "销售组织")]
        public string SaleRegion { get; set; }

        /// <summary>
        /// 行业
        /// </summary>
        [ExporterHeader(DisplayName = "行业")]
        public string CustomerGroup2 { get; set; }

        /// <summary>
        /// 细分市场
        /// </summary>
        [ExporterHeader(DisplayName = "细分市场")]
        public string CustomerGroup4 { get; set; }

        /// <summary>
        /// 客户分级
        /// </summary>
        [ExporterHeader(DisplayName = "客户分级")]
        public string CustomerRank { get; set; }

        /// <summary>
        /// 成本中心
        /// </summary>
        [ExporterHeader(DisplayName = "成本中心")]
        public string CostCentre { get; set; }

        /// <summary>
        /// 成本中心名称
        /// </summary>
        [ExporterHeader(DisplayName = "成本中心名称")]
        public string CostCentreName { get; set; }

        /// <summary>
        /// 商机编码
        /// </summary>
        [ExporterHeader(DisplayName = "商机编码")]
        public string BusinessOpportunityNo { get; set; }

        /// <summary>
        /// 商机名称
        /// </summary>
        [ExporterHeader(DisplayName = "商机名称")]
        public string BusinessOpportunityName { get; set; }

        /// <summary>
        /// 发放类型
        /// </summary>
        [ExporterHeader(DisplayName = "发放类型")]
        public string GrantType { get; set; }

        /// <summary>
        /// 样品送达日期
        /// </summary>
        [ExporterHeader(DisplayName = "样品送达日期")]
        public DateTime ArriveTime { get; set; }

        /// <summary>
        /// 投诉单号
        /// </summary>
        [ExporterHeader(DisplayName = "投诉单号")]
        public string ComplaintNo { get; set; }

        /// <summary>
        /// 是否含投槽
        /// </summary>
        [ExporterHeader(DisplayName = "是否含投槽")]
        public string IsTC { get; set; }

        /// <summary>
        /// 投槽时间
        /// </summary>
        [ExporterHeader(DisplayName = "投槽时间")]
        public DateTime TcTime { get; set; }

        /// <summary>
        /// 投资回收周期
        /// </summary>
        [ExporterHeader(DisplayName = "投资回收周期")]
        public string PaybackPeriod { get; set; }

        /// <summary>
        /// 是否转销售
        /// </summary>
        [ExporterHeader(DisplayName = "是否转销售")]
        public string IsToSales { get; set; }

        /// <summary>
        /// 预计转销售日期
        /// </summary>
        [ExporterHeader(DisplayName = "预计转销售日期")]
        public DateTime ToSalesTime { get; set; }

        /// <summary>
        /// 送达方编码
        /// </summary>
        [ExporterHeader(DisplayName = "送达方编码")]
        public string ReceiverCode { get; set; }

        /// <summary>
        /// 送达方
        /// </summary>
        [ExporterHeader(DisplayName = "送达方名称")]
        public string ReceiverName { get; set; }

        /// <summary>
        /// 送货方式
        /// </summary>
        [ExporterHeader(DisplayName = "送货方式")]
        public string DeliverType { get; set; }

        /// <summary>
        /// 收货人
        /// </summary>
        [ExporterHeader(DisplayName = "收货人")]
        public string Consignee { get; set; }

        /// <summary>
        /// 联系电话
        /// </summary>
        [ExporterHeader(DisplayName = "联系电话")]
        public string Telephone { get; set; }

        /// <summary>
        /// 送货地址
        /// </summary>
        [ExporterHeader(DisplayName = "送货地址")]
        public string DeliverAddress { get; set; }

        /// <summary>
        /// 运输区域
        /// </summary>
        [ExporterHeader(DisplayName = "运输区域")]
        public string TransitArea { get; set; }

        /// <summary>
        /// 运输区域编码
        /// </summary>
        [ExporterHeader(DisplayName = "运输区域编码")]
        public string TransitAreaCode { get; set; }

        /// <summary>
        /// 需求说明
        /// </summary>
        [ExporterHeader(DisplayName = "需求说明")]
        public string RequireDesc { get; set; }

        /// <summary>
        /// 销售直属上级
        /// </summary>
        [ExporterHeader(DisplayName = "销售直属上级")]
        public string SaleSuperior { get; set; }

        /// <summary>
        /// 销售行政
        /// </summary>
        [ExporterHeader(DisplayName = "销售行政")]
        public string XSXZName { get; set; }

        /// <summary>
        /// 总成本
        /// </summary>
        [ExporterHeader(DisplayName = "总成本")]
        public string CostTotal { get; set; }

        /// <summary>
        /// 行序号
        /// </summary>
        [ExporterHeader(DisplayName = "行序号")]
        public string SortNo { get; set; }

        /// <summary>
        /// 产品代码
        /// </summary>
        [ExporterHeader(DisplayName = "产品代码")]
        public string ProductCode { get; set; }

        /// <summary>
        /// 产品名称
        /// </summary>
        [ExporterHeader(DisplayName = "产品名称")]
        public string ProductName { get; set; }

        /// <summary>
        /// PDT
        /// </summary>
        [ExporterHeader(DisplayName = "PDT")]
        public string PDT { get; set; }

        /// <summary>
        /// PDT组织
        /// </summary>
        [ExporterHeader(DisplayName = "PDT组织")]
        public string PDTDesc { get; set; }

        /// <summary>
        /// 包装
        /// </summary>
        [ExporterHeader(DisplayName = "包装")]
        public string Packing { get; set; }

        /// <summary>
        /// 单位
        /// </summary>
        [ExporterHeader(DisplayName = "单位")]
        public string Unit { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        [ExporterHeader(DisplayName = "数量")]
        public string Number { get; set; }

        /// <summary>
        /// 成本
        /// </summary>
        [ExporterHeader(DisplayName = "成本")]
        public string Cost { get; set; }

        /// <summary>
        /// 成本合计
        /// </summary>
        [ExporterHeader(DisplayName = "成本合计")]
        public string CostSum { get; set; }

        /// <summary>
        /// 出货工厂
        /// </summary>
        [ExporterHeader(DisplayName = "出货工厂")]
        public string Factory { get; set; }

        /// <summary>
        /// 库存点
        /// </summary>
        [ExporterHeader(DisplayName = "库存点")]
        public string Inventory { get; set; }

        /// <summary>
        /// 批次
        /// </summary>
        [ExporterHeader(DisplayName = "批次")]
        public string Batch { get; set; }
    }
}
